<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>GstMeta for video: GStreamer Base Plugins 1.0 Library Reference Manual</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="index.html" title="GStreamer Base Plugins 1.0 Library Reference Manual">
<link rel="up" href="gstreamer-video.html" title="Video Library">
<link rel="prev" href="gst-plugins-base-libs-GstVideo.html" title="GstVideo">
<link rel="next" href="gst-plugins-base-libs-GstVideoAffineTransformationMeta.html" title="GstVideoAffineTransformationMeta">
<meta name="generator" content="GTK-Doc V1.28 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
<td width="100%" align="left" class="shortcuts">
<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
                  <a href="#gst-plugins-base-libs-GstMeta-for-video.description" class="shortcut">Description</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
<td><a accesskey="u" href="gstreamer-video.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="gst-plugins-base-libs-GstVideo.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="gst-plugins-base-libs-GstVideoAffineTransformationMeta.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
<a name="gst-plugins-base-libs-GstMeta-for-video"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="gst-plugins-base-libs-GstMeta-for-video.top_of_page"></a>GstMeta for video</span></h2>
<p>GstMeta for video — Video related GstMeta</p>
</td>
<td class="gallery_image" valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
<a name="gst-plugins-base-libs-GstMeta-for-video.functions"></a><h2>Functions</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="functions_return">
<col class="functions_name">
</colgroup>
<tbody>
<tr>
<td class="function_type">
<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-video-meta-map" title="gst_video_meta_map ()">gst_video_meta_map</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-video-meta-unmap" title="gst_video_meta_unmap ()">gst_video_meta_unmap</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">const <a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstMeta.html#GstMetaInfo"><span class="returnvalue">GstMetaInfo</span></a> *
</td>
<td class="function_name">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-video-meta-get-info" title="gst_video_meta_get_info ()">gst_video_meta_get_info</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="returnvalue">GstVideoMeta</span></a> *
</td>
<td class="function_name">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-add-video-meta" title="gst_buffer_add_video_meta ()">gst_buffer_add_video_meta</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="returnvalue">GstVideoMeta</span></a> *
</td>
<td class="function_name">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-add-video-meta-full" title="gst_buffer_add_video_meta_full ()">gst_buffer_add_video_meta_full</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="returnvalue">GstVideoMeta</span></a> *
</td>
<td class="function_name">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-get-video-meta" title="gst_buffer_get_video_meta ()">gst_buffer_get_video_meta</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="returnvalue">GstVideoMeta</span></a> *
</td>
<td class="function_name">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-get-video-meta-id" title="gst_buffer_get_video_meta_id ()">gst_buffer_get_video_meta_id</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-add-video-crop-meta" title="gst_buffer_add_video_crop_meta()">gst_buffer_add_video_crop_meta</a><span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-get-video-crop-meta" title="gst_buffer_get_video_crop_meta()">gst_buffer_get_video_crop_meta</a><span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="returnvalue">GstVideoRegionOfInterestMeta</span></a> *
</td>
<td class="function_name">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-add-video-region-of-interest-meta" title="gst_buffer_add_video_region_of_interest_meta ()">gst_buffer_add_video_region_of_interest_meta</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="returnvalue">GstVideoRegionOfInterestMeta</span></a> *
</td>
<td class="function_name">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-add-video-region-of-interest-meta-id" title="gst_buffer_add_video_region_of_interest_meta_id ()">gst_buffer_add_video_region_of_interest_meta_id</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-get-video-region-of-interest-meta" title="gst_buffer_get_video_region_of_interest_meta()">gst_buffer_get_video_region_of_interest_meta</a><span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="returnvalue">GstVideoRegionOfInterestMeta</span></a> *
</td>
<td class="function_name">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-get-video-region-of-interest-meta-id" title="gst_buffer_get_video_region_of_interest_meta_id ()">gst_buffer_get_video_region_of_interest_meta_id</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-video-region-of-interest-meta-add-param" title="gst_video_region_of_interest_meta_add_param ()">gst_video_region_of_interest_meta_add_param</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstStructure.html#GstStructure-struct"><span class="returnvalue">GstStructure</span></a> *
</td>
<td class="function_name">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-video-region-of-interest-meta-get-param" title="gst_video_region_of_interest_meta_get_param ()">gst_video_region_of_interest_meta_get_param</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<span class="c_punctuation">(</span><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureUpload" title="GstVideoGLTextureUpload ()">*GstVideoGLTextureUpload</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureUploadMeta" title="struct GstVideoGLTextureUploadMeta"><span class="returnvalue">GstVideoGLTextureUploadMeta</span></a> *
</td>
<td class="function_name">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-add-video-gl-texture-upload-meta" title="gst_buffer_add_video_gl_texture_upload_meta ()">gst_buffer_add_video_gl_texture_upload_meta</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-get-video-gl-texture-upload-meta" title="gst_buffer_get_video_gl_texture_upload_meta()">gst_buffer_get_video_gl_texture_upload_meta</a><span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
</td>
<td class="function_name">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-video-gl-texture-upload-meta-upload" title="gst_video_gl_texture_upload_meta_upload ()">gst_video_gl_texture_upload_meta_upload</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoTimeCodeMeta" title="GstVideoTimeCodeMeta"><span class="returnvalue">GstVideoTimeCodeMeta</span></a> *
</td>
<td class="function_name">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-add-video-time-code-meta" title="gst_buffer_add_video_time_code_meta ()">gst_buffer_add_video_time_code_meta</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoTimeCodeMeta" title="GstVideoTimeCodeMeta"><span class="returnvalue">GstVideoTimeCodeMeta</span></a> *
</td>
<td class="function_name">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-add-video-time-code-meta-full" title="gst_buffer_add_video_time_code_meta_full ()">gst_buffer_add_video_time_code_meta_full</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name">
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-get-video-time-code-meta" title="gst_buffer_get_video_time_code_meta()">gst_buffer_get_video_time_code_meta</a><span class="c_punctuation">()</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="gst-plugins-base-libs-GstMeta-for-video.other"></a><h2>Types and Values</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="name">
<col class="description">
</colgroup>
<tbody>
<tr>
<td class="datatype_keyword">struct</td>
<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta">GstVideoMeta</a></td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GST-CAPS-FEATURE-META-GST-VIDEO-META:CAPS" title="GST_CAPS_FEATURE_META_GST_VIDEO_META">GST_CAPS_FEATURE_META_GST_VIDEO_META</a></td>
</tr>
<tr>
<td class="datatype_keyword"> </td>
<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMetaTransform" title="GstVideoMetaTransform">GstVideoMetaTransform</a></td>
</tr>
<tr>
<td class="datatype_keyword">struct</td>
<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoCropMeta" title="struct GstVideoCropMeta">GstVideoCropMeta</a></td>
</tr>
<tr>
<td class="datatype_keyword"> </td>
<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta">GstVideoRegionOfInterestMeta</a></td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GST-CAPS-FEATURE-META-GST-VIDEO-GL-TEXTURE-UPLOAD-META:CAPS" title="GST_CAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META">GST_CAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META</a></td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GST-BUFFER-POOL-OPTION-VIDEO-GL-TEXTURE-UPLOAD-META:CAPS" title="GST_BUFFER_POOL_OPTION_VIDEO_GL_TEXTURE_UPLOAD_META">GST_BUFFER_POOL_OPTION_VIDEO_GL_TEXTURE_UPLOAD_META</a></td>
</tr>
<tr>
<td class="datatype_keyword">enum</td>
<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureOrientation" title="enum GstVideoGLTextureOrientation">GstVideoGLTextureOrientation</a></td>
</tr>
<tr>
<td class="datatype_keyword">enum</td>
<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureType" title="enum GstVideoGLTextureType">GstVideoGLTextureType</a></td>
</tr>
<tr>
<td class="datatype_keyword">struct</td>
<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureUploadMeta" title="struct GstVideoGLTextureUploadMeta">GstVideoGLTextureUploadMeta</a></td>
</tr>
<tr>
<td class="datatype_keyword"> </td>
<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoTimeCodeMeta" title="GstVideoTimeCodeMeta">GstVideoTimeCodeMeta</a></td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="gst-plugins-base-libs-GstMeta-for-video.includes"></a><h2>Includes</h2>
<pre class="synopsis">#include &lt;gst/video/video.h&gt;
</pre>
</div>
<div class="refsect1">
<a name="gst-plugins-base-libs-GstMeta-for-video.description"></a><h2>Description</h2>
</div>
<div class="refsect1">
<a name="gst-plugins-base-libs-GstMeta-for-video.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
<a name="gst-video-meta-map"></a><h3>gst_video_meta_map ()</h3>
<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
gst_video_meta_map (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="type">GstVideoMeta</span></a> *meta</code></em>,
                    <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> plane</code></em>,
                    <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstMemory.html#GstMapInfo"><span class="type">GstMapInfo</span></a> *info</code></em>,
                    <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> *data</code></em>,
                    <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *stride</code></em>,
                    <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstMemory.html#GstMapFlags"><span class="type">GstMapFlags</span></a> flags</code></em>);</pre>
<p>Map the video plane with index <em class="parameter"><code>plane</code></em>
 in <em class="parameter"><code>meta</code></em>
 and return a pointer to the
first byte of the plane and the stride of the plane.</p>
<div class="refsect3">
<a name="gst-video-meta-map.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>meta</p></td>
<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="type">GstVideoMeta</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>plane</p></td>
<td class="parameter_description"><p>a plane</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>info</p></td>
<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstMemory.html#GstMapInfo"><span class="type">GstMapInfo</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>data</p></td>
<td class="parameter_description"><p>the data of <em class="parameter"><code>plane</code></em>
. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>stride</p></td>
<td class="parameter_description"><p>the stride of <em class="parameter"><code>plane</code></em>
. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>flags</p></td>
<td class="parameter_description"><p><em class="parameter"><code>GstMapFlags</code></em>
</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gst-video-meta-map.returns"></a><h4>Returns</h4>
<p> TRUE if the map operation was successful.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gst-video-meta-unmap"></a><h3>gst_video_meta_unmap ()</h3>
<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
gst_video_meta_unmap (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="type">GstVideoMeta</span></a> *meta</code></em>,
                      <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> plane</code></em>,
                      <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstMemory.html#GstMapInfo"><span class="type">GstMapInfo</span></a> *info</code></em>);</pre>
<p>Unmap a previously mapped plane with <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-video-meta-map" title="gst_video_meta_map ()"><code class="function">gst_video_meta_map()</code></a>.</p>
<div class="refsect3">
<a name="gst-video-meta-unmap.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>meta</p></td>
<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="type">GstVideoMeta</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>plane</p></td>
<td class="parameter_description"><p>a plane</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>info</p></td>
<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstMemory.html#GstMapInfo"><span class="type">GstMapInfo</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gst-video-meta-unmap.returns"></a><h4>Returns</h4>
<p> TRUE if the memory was successfully unmapped.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gst-video-meta-get-info"></a><h3>gst_video_meta_get_info ()</h3>
<pre class="programlisting">const <a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstMeta.html#GstMetaInfo"><span class="returnvalue">GstMetaInfo</span></a> *
gst_video_meta_get_info (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
</div>
<hr>
<div class="refsect2">
<a name="gst-buffer-add-video-meta"></a><h3>gst_buffer_add_video_meta ()</h3>
<pre class="programlisting"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="returnvalue">GstVideoMeta</span></a> *
gst_buffer_add_video_meta (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a> *buffer</code></em>,
                           <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoFrameFlags" title="enum GstVideoFrameFlags"><span class="type">GstVideoFrameFlags</span></a> flags</code></em>,
                           <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoFormat" title="enum GstVideoFormat"><span class="type">GstVideoFormat</span></a> format</code></em>,
                           <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> width</code></em>,
                           <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> height</code></em>);</pre>
<p>Attaches GstVideoMeta metadata to <em class="parameter"><code>buffer</code></em>
 with the given parameters and the
default offsets and strides for <em class="parameter"><code>format</code></em>
 and <em class="parameter"><code>width</code></em>
 x <em class="parameter"><code>height</code></em>
.</p>
<p>This function calculates the default offsets and strides and then calls
<a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-buffer-add-video-meta-full" title="gst_buffer_add_video_meta_full ()"><code class="function">gst_buffer_add_video_meta_full()</code></a> with them.</p>
<div class="refsect3">
<a name="gst-buffer-add-video-meta.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>buffer</p></td>
<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>flags</p></td>
<td class="parameter_description"><p><a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoFrameFlags" title="enum GstVideoFrameFlags"><span class="type">GstVideoFrameFlags</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>format</p></td>
<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoFormat" title="enum GstVideoFormat"><span class="type">GstVideoFormat</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>width</p></td>
<td class="parameter_description"><p>the width</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>height</p></td>
<td class="parameter_description"><p>the height</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gst-buffer-add-video-meta.returns"></a><h4>Returns</h4>
<p>the <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="type">GstVideoMeta</span></a> on <em class="parameter"><code>buffer</code></em>
. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gst-buffer-add-video-meta-full"></a><h3>gst_buffer_add_video_meta_full ()</h3>
<pre class="programlisting"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="returnvalue">GstVideoMeta</span></a> *
gst_buffer_add_video_meta_full (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a> *buffer</code></em>,
                                <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoFrameFlags" title="enum GstVideoFrameFlags"><span class="type">GstVideoFrameFlags</span></a> flags</code></em>,
                                <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoFormat" title="enum GstVideoFormat"><span class="type">GstVideoFormat</span></a> format</code></em>,
                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> width</code></em>,
                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> height</code></em>,
                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> n_planes</code></em>,
                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> offset[GST_VIDEO_MAX_PLANES]</code></em>,
                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> stride[GST_VIDEO_MAX_PLANES]</code></em>);</pre>
<p>Attaches GstVideoMeta metadata to <em class="parameter"><code>buffer</code></em>
 with the given parameters.</p>
<div class="refsect3">
<a name="gst-buffer-add-video-meta-full.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>buffer</p></td>
<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>flags</p></td>
<td class="parameter_description"><p><a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoFrameFlags" title="enum GstVideoFrameFlags"><span class="type">GstVideoFrameFlags</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>format</p></td>
<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoFormat" title="enum GstVideoFormat"><span class="type">GstVideoFormat</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>width</p></td>
<td class="parameter_description"><p>the width</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>height</p></td>
<td class="parameter_description"><p>the height</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>n_planes</p></td>
<td class="parameter_description"><p>number of planes</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>offset</p></td>
<td class="parameter_description"><p>offset of each plane. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> fixed-size=4]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>stride</p></td>
<td class="parameter_description"><p>stride of each plane. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> fixed-size=4]</span></td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gst-buffer-add-video-meta-full.returns"></a><h4>Returns</h4>
<p>the <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="type">GstVideoMeta</span></a> on <em class="parameter"><code>buffer</code></em>
. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gst-buffer-get-video-meta"></a><h3>gst_buffer_get_video_meta ()</h3>
<pre class="programlisting"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="returnvalue">GstVideoMeta</span></a> *
gst_buffer_get_video_meta (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a> *buffer</code></em>);</pre>
<p>Find the <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="type">GstVideoMeta</span></a> on <em class="parameter"><code>buffer</code></em>
 with the lowest <em class="parameter"><code>id</code></em>
.</p>
<p>Buffers can contain multiple <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="type">GstVideoMeta</span></a> metadata items when dealing with
multiview buffers.</p>
<div class="refsect3">
<a name="gst-buffer-get-video-meta.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>buffer</p></td>
<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gst-buffer-get-video-meta.returns"></a><h4>Returns</h4>
<p>the <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="type">GstVideoMeta</span></a> with lowest id (usually 0) or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when there
is no such metadata on <em class="parameter"><code>buffer</code></em>
. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gst-buffer-get-video-meta-id"></a><h3>gst_buffer_get_video_meta_id ()</h3>
<pre class="programlisting"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="returnvalue">GstVideoMeta</span></a> *
gst_buffer_get_video_meta_id (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a> *buffer</code></em>,
                              <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> id</code></em>);</pre>
<p>Find the <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="type">GstVideoMeta</span></a> on <em class="parameter"><code>buffer</code></em>
 with the given <em class="parameter"><code>id</code></em>
.</p>
<p>Buffers can contain multiple <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="type">GstVideoMeta</span></a> metadata items when dealing with
multiview buffers.</p>
<div class="refsect3">
<a name="gst-buffer-get-video-meta-id.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>buffer</p></td>
<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>id</p></td>
<td class="parameter_description"><p>a metadata id</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gst-buffer-get-video-meta-id.returns"></a><h4>Returns</h4>
<p>the <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoMeta" title="struct GstVideoMeta"><span class="type">GstVideoMeta</span></a> with <em class="parameter"><code>id</code></em>
or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when there is no such metadata
on <em class="parameter"><code>buffer</code></em>
. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gst-buffer-add-video-crop-meta"></a><h3>gst_buffer_add_video_crop_meta()</h3>
<pre class="programlisting">#define gst_buffer_add_video_crop_meta(b) ((GstVideoCropMeta*)gst_buffer_add_meta((b),GST_VIDEO_CROP_META_INFO, NULL))
</pre>
</div>
<hr>
<div class="refsect2">
<a name="gst-buffer-get-video-crop-meta"></a><h3>gst_buffer_get_video_crop_meta()</h3>
<pre class="programlisting">#define gst_buffer_get_video_crop_meta(b) ((GstVideoCropMeta*)gst_buffer_get_meta((b),GST_VIDEO_CROP_META_API_TYPE))
</pre>
</div>
<hr>
<div class="refsect2">
<a name="gst-buffer-add-video-region-of-interest-meta"></a><h3>gst_buffer_add_video_region_of_interest_meta ()</h3>
<pre class="programlisting"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="returnvalue">GstVideoRegionOfInterestMeta</span></a> *
gst_buffer_add_video_region_of_interest_meta
                               (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a> *buffer</code></em>,
                                <em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *roi_type</code></em>,
                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> x</code></em>,
                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> y</code></em>,
                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> w</code></em>,
                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> h</code></em>);</pre>
<p>Attaches <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="type">GstVideoRegionOfInterestMeta</span></a> metadata to <em class="parameter"><code>buffer</code></em>
 with the given
parameters.</p>
<div class="refsect3">
<a name="gst-buffer-add-video-region-of-interest-meta.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>buffer</p></td>
<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>roi_type</p></td>
<td class="parameter_description"><p>Type of the region of interest (e.g. "face")</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>x</p></td>
<td class="parameter_description"><p>X position</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>y</p></td>
<td class="parameter_description"><p>Y position</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>w</p></td>
<td class="parameter_description"><p>width</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>h</p></td>
<td class="parameter_description"><p>height</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gst-buffer-add-video-region-of-interest-meta.returns"></a><h4>Returns</h4>
<p>the <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="type">GstVideoRegionOfInterestMeta</span></a> on <em class="parameter"><code>buffer</code></em>
. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gst-buffer-add-video-region-of-interest-meta-id"></a><h3>gst_buffer_add_video_region_of_interest_meta_id ()</h3>
<pre class="programlisting"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="returnvalue">GstVideoRegionOfInterestMeta</span></a> *
gst_buffer_add_video_region_of_interest_meta_id
                               (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a> *buffer</code></em>,
                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> roi_type</code></em>,
                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> x</code></em>,
                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> y</code></em>,
                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> w</code></em>,
                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> h</code></em>);</pre>
<p>Attaches <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="type">GstVideoRegionOfInterestMeta</span></a> metadata to <em class="parameter"><code>buffer</code></em>
 with the given
parameters.</p>
<div class="refsect3">
<a name="gst-buffer-add-video-region-of-interest-meta-id.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>buffer</p></td>
<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>roi_type</p></td>
<td class="parameter_description"><p>Type of the region of interest (e.g. "face")</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>x</p></td>
<td class="parameter_description"><p>X position</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>y</p></td>
<td class="parameter_description"><p>Y position</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>w</p></td>
<td class="parameter_description"><p>width</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>h</p></td>
<td class="parameter_description"><p>height</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gst-buffer-add-video-region-of-interest-meta-id.returns"></a><h4>Returns</h4>
<p>the <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="type">GstVideoRegionOfInterestMeta</span></a> on <em class="parameter"><code>buffer</code></em>
. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gst-buffer-get-video-region-of-interest-meta"></a><h3>gst_buffer_get_video_region_of_interest_meta()</h3>
<pre class="programlisting">#define             gst_buffer_get_video_region_of_interest_meta(b)</pre>
</div>
<hr>
<div class="refsect2">
<a name="gst-buffer-get-video-region-of-interest-meta-id"></a><h3>gst_buffer_get_video_region_of_interest_meta_id ()</h3>
<pre class="programlisting"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="returnvalue">GstVideoRegionOfInterestMeta</span></a> *
gst_buffer_get_video_region_of_interest_meta_id
                               (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a> *buffer</code></em>,
                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> id</code></em>);</pre>
<p>Find the <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="type">GstVideoRegionOfInterestMeta</span></a> on <em class="parameter"><code>buffer</code></em>
 with the given <em class="parameter"><code>id</code></em>
.</p>
<p>Buffers can contain multiple <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="type">GstVideoRegionOfInterestMeta</span></a> metadata items if
multiple regions of interests are marked on a frame.</p>
<div class="refsect3">
<a name="gst-buffer-get-video-region-of-interest-meta-id.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>buffer</p></td>
<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>id</p></td>
<td class="parameter_description"><p>a metadata id</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gst-buffer-get-video-region-of-interest-meta-id.returns"></a><h4>Returns</h4>
<p>the <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="type">GstVideoRegionOfInterestMeta</span></a> with <em class="parameter"><code>id</code></em>
or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> when there is
no such metadata on <em class="parameter"><code>buffer</code></em>
. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gst-video-region-of-interest-meta-add-param"></a><h3>gst_video_region_of_interest_meta_add_param ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gst_video_region_of_interest_meta_add_param
                               (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="type">GstVideoRegionOfInterestMeta</span></a> *meta</code></em>,
                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstStructure.html#GstStructure-struct"><span class="type">GstStructure</span></a> *s</code></em>);</pre>
<p>Attach element-specific parameters to <em class="parameter"><code>meta</code></em>
 meant to be used by downstream
elements which may handle this ROI.
The name of <em class="parameter"><code>s</code></em>
 is used to identify the element these parameters are meant for.</p>
<p>This is typically used to tell encoders how they should encode this specific region.
For example, a structure named "roi/x264enc" could be used to give the
QP offsets this encoder should use when encoding the region described in <em class="parameter"><code>meta</code></em>
.
Multiple parameters can be defined for the same meta so different encoders
can be supported by cross platform applications).</p>
<div class="refsect3">
<a name="gst-video-region-of-interest-meta-add-param.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>meta</p></td>
<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="type">GstVideoRegionOfInterestMeta</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>s</p></td>
<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstStructure.html#GstStructure-struct"><span class="type">GstStructure</span></a>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="ix04.html#api-index-1.14">1.14</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gst-video-region-of-interest-meta-get-param"></a><h3>gst_video_region_of_interest_meta_get_param ()</h3>
<pre class="programlisting"><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstStructure.html#GstStructure-struct"><span class="returnvalue">GstStructure</span></a> *
gst_video_region_of_interest_meta_get_param
                               (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="type">GstVideoRegionOfInterestMeta</span></a> *meta</code></em>,
                                <em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
<p>Retrieve the parameter for <em class="parameter"><code>meta</code></em>
 having <em class="parameter"><code>name</code></em>
 as structure name,
or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if there is none.</p>
<div class="refsect3">
<a name="gst-video-region-of-interest-meta-get-param.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>meta</p></td>
<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoRegionOfInterestMeta" title="GstVideoRegionOfInterestMeta"><span class="type">GstVideoRegionOfInterestMeta</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>name</p></td>
<td class="parameter_description"><p>a name.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gst-video-region-of-interest-meta-get-param.returns"></a><h4>Returns</h4>
<p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstStructure.html#GstStructure-struct"><span class="type">GstStructure</span></a>. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
</div>
<p class="since">Since: <a class="link" href="ix04.html#api-index-1.14">1.14</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GstVideoGLTextureUpload"></a><h3>GstVideoGLTextureUpload ()</h3>
<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
<span class="c_punctuation">(</span>*GstVideoGLTextureUpload<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureUploadMeta" title="struct GstVideoGLTextureUploadMeta"><span class="type">GstVideoGLTextureUploadMeta</span></a> *meta</code></em>,
                            <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> texture_id[4]</code></em>);</pre>
</div>
<hr>
<div class="refsect2">
<a name="gst-buffer-add-video-gl-texture-upload-meta"></a><h3>gst_buffer_add_video_gl_texture_upload_meta ()</h3>
<pre class="programlisting"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureUploadMeta" title="struct GstVideoGLTextureUploadMeta"><span class="returnvalue">GstVideoGLTextureUploadMeta</span></a> *
gst_buffer_add_video_gl_texture_upload_meta
                               (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a> *buffer</code></em>,
                                <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureOrientation" title="enum GstVideoGLTextureOrientation"><span class="type">GstVideoGLTextureOrientation</span></a> texture_orientation</code></em>,
                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> n_textures</code></em>,
                                <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureType" title="enum GstVideoGLTextureType"><span class="type">GstVideoGLTextureType</span></a> texture_type[4]</code></em>,
                                <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureUpload" title="GstVideoGLTextureUpload ()"><span class="type">GstVideoGLTextureUpload</span></a> upload</code></em>,
                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>,
                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-Boxed-Types.html#GBoxedCopyFunc"><span class="type">GBoxedCopyFunc</span></a> user_data_copy</code></em>,
                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-Boxed-Types.html#GBoxedFreeFunc"><span class="type">GBoxedFreeFunc</span></a> user_data_free</code></em>);</pre>
<p>Attaches GstVideoGLTextureUploadMeta metadata to <em class="parameter"><code>buffer</code></em>
 with the given
parameters.</p>
<div class="refsect3">
<a name="gst-buffer-add-video-gl-texture-upload-meta.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>buffer</p></td>
<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>texture_orientation</p></td>
<td class="parameter_description"><p>the <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureOrientation" title="enum GstVideoGLTextureOrientation"><span class="type">GstVideoGLTextureOrientation</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>n_textures</p></td>
<td class="parameter_description"><p>the number of textures</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>texture_type</p></td>
<td class="parameter_description"><p>array of <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureType" title="enum GstVideoGLTextureType"><span class="type">GstVideoGLTextureType</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>upload</p></td>
<td class="parameter_description"><p>the function to upload the buffer to a specific texture ID. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="The callback is valid only during the call to the method."><span class="acronym">scope call</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>user data for the implementor of <em class="parameter"><code>upload</code></em>
</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data_copy</p></td>
<td class="parameter_description"><p>function to copy <em class="parameter"><code>user_data</code></em>
. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="The callback is valid only during the call to the method."><span class="acronym">scope call</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>user_data_free</p></td>
<td class="parameter_description"><p>function to free <em class="parameter"><code>user_data</code></em>
. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="The callback is valid only during the call to the method."><span class="acronym">scope call</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gst-buffer-add-video-gl-texture-upload-meta.returns"></a><h4>Returns</h4>
<p>the <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureUploadMeta" title="struct GstVideoGLTextureUploadMeta"><span class="type">GstVideoGLTextureUploadMeta</span></a> on <em class="parameter"><code>buffer</code></em>
. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gst-buffer-get-video-gl-texture-upload-meta"></a><h3>gst_buffer_get_video_gl_texture_upload_meta()</h3>
<pre class="programlisting">#define gst_buffer_get_video_gl_texture_upload_meta(b) ((GstVideoGLTextureUploadMeta*)gst_buffer_get_meta((b),GST_VIDEO_GL_TEXTURE_UPLOAD_META_API_TYPE))
</pre>
</div>
<hr>
<div class="refsect2">
<a name="gst-video-gl-texture-upload-meta-upload"></a><h3>gst_video_gl_texture_upload_meta_upload ()</h3>
<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
gst_video_gl_texture_upload_meta_upload
                               (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureUploadMeta" title="struct GstVideoGLTextureUploadMeta"><span class="type">GstVideoGLTextureUploadMeta</span></a> *meta</code></em>,
                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> texture_id[4]</code></em>);</pre>
<p>Uploads the buffer which owns the meta to a specific texture ID.</p>
<div class="refsect3">
<a name="gst-video-gl-texture-upload-meta-upload.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>meta</p></td>
<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureUploadMeta" title="struct GstVideoGLTextureUploadMeta"><span class="type">GstVideoGLTextureUploadMeta</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>texture_id</p></td>
<td class="parameter_description"><p>the texture IDs to upload to</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gst-video-gl-texture-upload-meta-upload.returns"></a><h4>Returns</h4>
<p> <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if uploading succeeded, <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gst-buffer-add-video-time-code-meta"></a><h3>gst_buffer_add_video_time_code_meta ()</h3>
<pre class="programlisting"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoTimeCodeMeta" title="GstVideoTimeCodeMeta"><span class="returnvalue">GstVideoTimeCodeMeta</span></a> *
gst_buffer_add_video_time_code_meta (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a> *buffer</code></em>,
                                     <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoTimeCode" title="struct GstVideoTimeCode"><span class="type">GstVideoTimeCode</span></a> *tc</code></em>);</pre>
<p>Attaches <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoTimeCodeMeta" title="GstVideoTimeCodeMeta"><span class="type">GstVideoTimeCodeMeta</span></a> metadata to <em class="parameter"><code>buffer</code></em>
 with the given
parameters.</p>
<div class="refsect3">
<a name="gst-buffer-add-video-time-code-meta.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>buffer</p></td>
<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>tc</p></td>
<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoTimeCode" title="struct GstVideoTimeCode"><span class="type">GstVideoTimeCode</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gst-buffer-add-video-time-code-meta.returns"></a><h4>Returns</h4>
<p>the <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoTimeCodeMeta" title="GstVideoTimeCodeMeta"><span class="type">GstVideoTimeCodeMeta</span></a> on <em class="parameter"><code>buffer</code></em>
, or
(since 1.16) <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the timecode was invalid. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p>
</div>
<p class="since">Since: <a class="link" href="ix06.html#api-index-1.10">1.10</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gst-buffer-add-video-time-code-meta-full"></a><h3>gst_buffer_add_video_time_code_meta_full ()</h3>
<pre class="programlisting"><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoTimeCodeMeta" title="GstVideoTimeCodeMeta"><span class="returnvalue">GstVideoTimeCodeMeta</span></a> *
gst_buffer_add_video_time_code_meta_full
                               (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a> *buffer</code></em>,
                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> fps_n</code></em>,
                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> fps_d</code></em>,
                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-GDateTime.html#GDateTime"><span class="type">GDateTime</span></a> *latest_daily_jam</code></em>,
                                <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoTimeCodeFlags" title="enum GstVideoTimeCodeFlags"><span class="type">GstVideoTimeCodeFlags</span></a> flags</code></em>,
                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> hours</code></em>,
                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> minutes</code></em>,
                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> seconds</code></em>,
                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> frames</code></em>,
                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> field_count</code></em>);</pre>
<p>Attaches <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoTimeCodeMeta" title="GstVideoTimeCodeMeta"><span class="type">GstVideoTimeCodeMeta</span></a> metadata to <em class="parameter"><code>buffer</code></em>
 with the given
parameters.</p>
<div class="refsect3">
<a name="gst-buffer-add-video-time-code-meta-full.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>buffer</p></td>
<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>fps_n</p></td>
<td class="parameter_description"><p>framerate numerator</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>fps_d</p></td>
<td class="parameter_description"><p>framerate denominator</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>latest_daily_jam</p></td>
<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/glib/glib-GDateTime.html#GDateTime"><span class="type">GDateTime</span></a> for the latest daily jam</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>flags</p></td>
<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoTimeCodeFlags" title="enum GstVideoTimeCodeFlags"><span class="type">GstVideoTimeCodeFlags</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>hours</p></td>
<td class="parameter_description"><p>hours since the daily jam</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>minutes</p></td>
<td class="parameter_description"><p>minutes since the daily jam</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>seconds</p></td>
<td class="parameter_description"><p>seconds since the daily jam</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>frames</p></td>
<td class="parameter_description"><p>frames since the daily jam</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>field_count</p></td>
<td class="parameter_description"><p>fields since the daily jam</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gst-buffer-add-video-time-code-meta-full.returns"></a><h4>Returns</h4>
<p>the <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoTimeCodeMeta" title="GstVideoTimeCodeMeta"><span class="type">GstVideoTimeCodeMeta</span></a> on <em class="parameter"><code>buffer</code></em>
, or
(since 1.16) <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the timecode was invalid. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
<p class="since">Since: <a class="link" href="ix06.html#api-index-1.10">1.10</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gst-buffer-get-video-time-code-meta"></a><h3>gst_buffer_get_video_time_code_meta()</h3>
<pre class="programlisting">#define             gst_buffer_get_video_time_code_meta(b)</pre>
</div>
</div>
<div class="refsect1">
<a name="gst-plugins-base-libs-GstMeta-for-video.other_details"></a><h2>Types and Values</h2>
<div class="refsect2">
<a name="GstVideoMeta"></a><h3>struct GstVideoMeta</h3>
<pre class="programlisting">struct GstVideoMeta {
  GstMeta            meta;

  GstBuffer         *buffer;

  GstVideoFrameFlags flags;
  GstVideoFormat     format;
  gint               id;
  guint              width;
  guint              height;

  guint              n_planes;
  gsize              offset[GST_VIDEO_MAX_PLANES];
  gint               stride[GST_VIDEO_MAX_PLANES];

  gboolean (*map)    (GstVideoMeta *meta, guint plane, GstMapInfo *info,
                      gpointer *data, gint * stride, GstMapFlags flags);
  gboolean (*unmap)  (GstVideoMeta *meta, guint plane, GstMapInfo *info);
};
</pre>
<p>Extra buffer metadata describing image properties</p>
<div class="refsect3">
<a name="GstVideoMeta.members"></a><h4>Members</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="300px" class="struct_members_name">
<col class="struct_members_description">
<col width="200px" class="struct_members_annotations">
</colgroup>
<tbody>
<tr>
<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstMeta.html#GstMeta"><span class="type">GstMeta</span></a> <em class="structfield"><code><a name="GstVideoMeta.meta"></a>meta</code></em>;</p></td>
<td class="struct_member_description"><p>parent <a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstMeta.html#GstMeta"><span class="type">GstMeta</span></a></p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a> *<em class="structfield"><code><a name="GstVideoMeta.buffer"></a>buffer</code></em>;</p></td>
<td class="struct_member_description"><p>the buffer this metadata belongs to</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoFrameFlags" title="enum GstVideoFrameFlags"><span class="type">GstVideoFrameFlags</span></a> <em class="structfield"><code><a name="GstVideoMeta.flags"></a>flags</code></em>;</p></td>
<td class="struct_member_description"><p>additional video flags</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoFormat" title="enum GstVideoFormat"><span class="type">GstVideoFormat</span></a> <em class="structfield"><code><a name="GstVideoMeta.format"></a>format</code></em>;</p></td>
<td class="struct_member_description"><p>the video format</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstVideoMeta.id"></a>id</code></em>;</p></td>
<td class="struct_member_description"><p>identifier of the frame</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstVideoMeta.width"></a>width</code></em>;</p></td>
<td class="struct_member_description"><p>the video width</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstVideoMeta.height"></a>height</code></em>;</p></td>
<td class="struct_member_description"><p>the video height</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstVideoMeta.n-planes"></a>n_planes</code></em>;</p></td>
<td class="struct_member_description"><p>the number of planes in the image</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> <em class="structfield"><code><a name="GstVideoMeta.offset"></a>offset</code></em>[GST_VIDEO_MAX_PLANES];</p></td>
<td class="struct_member_description"><p>array of offsets for the planes. This field might not always be
valid, it is used by the default implementation of <em class="parameter"><code>map</code></em>
.</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstVideoMeta.stride"></a>stride</code></em>[GST_VIDEO_MAX_PLANES];</p></td>
<td class="struct_member_description"><p>array of strides for the planes. This field might not always be
valid, it is used by the default implementation of <em class="parameter"><code>map</code></em>
.</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><em class="structfield"><code><a name="GstVideoMeta.map"></a>map</code></em> ()</p></td>
<td class="struct_member_description"><p>map the memory of a plane</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><em class="structfield"><code><a name="GstVideoMeta.unmap"></a>unmap</code></em> ()</p></td>
<td class="struct_member_description"><p>unmap the memory of a plane</p></td>
<td class="struct_member_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="GST-CAPS-FEATURE-META-GST-VIDEO-META:CAPS"></a><h3>GST_CAPS_FEATURE_META_GST_VIDEO_META</h3>
<pre class="programlisting">#define GST_CAPS_FEATURE_META_GST_VIDEO_META "meta:GstVideoMeta"
</pre>
</div>
<hr>
<div class="refsect2">
<a name="GstVideoMetaTransform"></a><h3>GstVideoMetaTransform</h3>
<pre class="programlisting">typedef struct {
  GstVideoInfo *in_info;
  GstVideoInfo *out_info;
} GstVideoMetaTransform;
</pre>
<p>Extra data passed to a video transform <a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstMeta.html#GstMetaTransformFunction"><span class="type">GstMetaTransformFunction</span></a> such as:
"gst-video-scale".</p>
<div class="refsect3">
<a name="GstVideoMetaTransform.members"></a><h4>Members</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="300px" class="struct_members_name">
<col class="struct_members_description">
<col width="200px" class="struct_members_annotations">
</colgroup>
<tbody>
<tr>
<td class="struct_member_name"><p><a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoInfo" title="struct GstVideoInfo"><span class="type">GstVideoInfo</span></a> *<em class="structfield"><code><a name="GstVideoMetaTransform.in-info"></a>in_info</code></em>;</p></td>
<td class="struct_member_description"><p>the input <a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoInfo" title="struct GstVideoInfo"><span class="type">GstVideoInfo</span></a></p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoInfo" title="struct GstVideoInfo"><span class="type">GstVideoInfo</span></a> *<em class="structfield"><code><a name="GstVideoMetaTransform.out-info"></a>out_info</code></em>;</p></td>
<td class="struct_member_description"><p>the output <a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoInfo" title="struct GstVideoInfo"><span class="type">GstVideoInfo</span></a></p></td>
<td class="struct_member_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="GstVideoCropMeta"></a><h3>struct GstVideoCropMeta</h3>
<pre class="programlisting">struct GstVideoCropMeta {
  GstMeta       meta;

  guint         x;
  guint         y;
  guint         width;
  guint         height;
};
</pre>
<p>Extra buffer metadata describing image cropping.</p>
<div class="refsect3">
<a name="GstVideoCropMeta.members"></a><h4>Members</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="300px" class="struct_members_name">
<col class="struct_members_description">
<col width="200px" class="struct_members_annotations">
</colgroup>
<tbody>
<tr>
<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstMeta.html#GstMeta"><span class="type">GstMeta</span></a> <em class="structfield"><code><a name="GstVideoCropMeta.meta"></a>meta</code></em>;</p></td>
<td class="struct_member_description"><p>parent <a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstMeta.html#GstMeta"><span class="type">GstMeta</span></a></p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstVideoCropMeta.x"></a>x</code></em>;</p></td>
<td class="struct_member_description"><p>the horizontal offset</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstVideoCropMeta.y"></a>y</code></em>;</p></td>
<td class="struct_member_description"><p>the vertical offset</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstVideoCropMeta.width"></a>width</code></em>;</p></td>
<td class="struct_member_description"><p>the cropped width</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstVideoCropMeta.height"></a>height</code></em>;</p></td>
<td class="struct_member_description"><p>the cropped height</p></td>
<td class="struct_member_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="GstVideoRegionOfInterestMeta"></a><h3>GstVideoRegionOfInterestMeta</h3>
<pre class="programlisting">typedef struct {
  GstMeta meta;

  GQuark roi_type;
  gint id;
  gint parent_id;

  guint x;
  guint y;
  guint w;
  guint h;

  GList *params;
} GstVideoRegionOfInterestMeta;
</pre>
<p>Extra buffer metadata describing an image region of interest</p>
<div class="refsect3">
<a name="GstVideoRegionOfInterestMeta.members"></a><h4>Members</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="300px" class="struct_members_name">
<col class="struct_members_description">
<col width="200px" class="struct_members_annotations">
</colgroup>
<tbody>
<tr>
<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstMeta.html#GstMeta"><span class="type">GstMeta</span></a> <em class="structfield"><code><a name="GstVideoRegionOfInterestMeta.meta"></a>meta</code></em>;</p></td>
<td class="struct_member_description"><p>parent <a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstMeta.html#GstMeta"><span class="type">GstMeta</span></a></p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> <em class="structfield"><code><a name="GstVideoRegionOfInterestMeta.roi-type"></a>roi_type</code></em>;</p></td>
<td class="struct_member_description"><p>GQuark describing the semantic of the Roi (f.i. a face, a pedestrian)</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstVideoRegionOfInterestMeta.id"></a>id</code></em>;</p></td>
<td class="struct_member_description"><p>identifier of this particular ROI</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstVideoRegionOfInterestMeta.parent-id"></a>parent_id</code></em>;</p></td>
<td class="struct_member_description"><p>identifier of its parent ROI, used f.i. for ROI hierarchisation.</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstVideoRegionOfInterestMeta.x"></a>x</code></em>;</p></td>
<td class="struct_member_description"><p>x component of upper-left corner</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstVideoRegionOfInterestMeta.y"></a>y</code></em>;</p></td>
<td class="struct_member_description"><p>y component of upper-left corner</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstVideoRegionOfInterestMeta.w"></a>w</code></em>;</p></td>
<td class="struct_member_description"><p>bounding box width</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstVideoRegionOfInterestMeta.h"></a>h</code></em>;</p></td>
<td class="struct_member_description"><p>bounding box height</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *<em class="structfield"><code><a name="GstVideoRegionOfInterestMeta.params"></a>params</code></em>;</p></td>
<td class="struct_member_description"><p>list of <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstStructure.html#GstStructure-struct"><span class="type">GstStructure</span></a> containing element-specific params for downstream, see <a href="gst-plugins-base-libs-GstMeta-for-video.html#gst-video-region-of-interest-meta-add-param"><code class="function">gst_video_region_of_interest_meta_add_params()</code></a>. (Since: 1.14)</p></td>
<td class="struct_member_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="GST-CAPS-FEATURE-META-GST-VIDEO-GL-TEXTURE-UPLOAD-META:CAPS"></a><h3>GST_CAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META</h3>
<pre class="programlisting">#define GST_CAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META "meta:GstVideoGLTextureUploadMeta"
</pre>
</div>
<hr>
<div class="refsect2">
<a name="GST-BUFFER-POOL-OPTION-VIDEO-GL-TEXTURE-UPLOAD-META:CAPS"></a><h3>GST_BUFFER_POOL_OPTION_VIDEO_GL_TEXTURE_UPLOAD_META</h3>
<pre class="programlisting">#define GST_BUFFER_POOL_OPTION_VIDEO_GL_TEXTURE_UPLOAD_META "GstBufferPoolOptionVideoGLTextureUploadMeta"
</pre>
<p>An option that can be activated on a bufferpool to request gl texture upload
meta on buffers from the pool.</p>
<p>When this option is enabled on the bufferpool,
<em class="parameter"><code>GST_BUFFER_POOL_OPTION_VIDEO_META</code></em>
 should also be enabled.</p>
<p class="since">Since: <a class="link" href="ix12.html#api-index-1.2.2">1.2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GstVideoGLTextureOrientation"></a><h3>enum GstVideoGLTextureOrientation</h3>
<p>The orientation of the GL texture.</p>
<div class="refsect3">
<a name="GstVideoGLTextureOrientation.members"></a><h4>Members</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="300px" class="enum_members_name">
<col class="enum_members_description">
<col width="200px" class="enum_members_annotations">
</colgroup>
<tbody>
<tr>
<td class="enum_member_name"><p><a name="GST-VIDEO-GL-TEXTURE-ORIENTATION-X-NORMAL-Y-NORMAL:CAPS"></a>GST_VIDEO_GL_TEXTURE_ORIENTATION_X_NORMAL_Y_NORMAL</p></td>
<td class="enum_member_description">
<p>Top line first in memory, left row first</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="GST-VIDEO-GL-TEXTURE-ORIENTATION-X-NORMAL-Y-FLIP:CAPS"></a>GST_VIDEO_GL_TEXTURE_ORIENTATION_X_NORMAL_Y_FLIP</p></td>
<td class="enum_member_description">
<p>Bottom line first in memory, left row first</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="GST-VIDEO-GL-TEXTURE-ORIENTATION-X-FLIP-Y-NORMAL:CAPS"></a>GST_VIDEO_GL_TEXTURE_ORIENTATION_X_FLIP_Y_NORMAL</p></td>
<td class="enum_member_description">
<p>Top line first in memory, right row first</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="GST-VIDEO-GL-TEXTURE-ORIENTATION-X-FLIP-Y-FLIP:CAPS"></a>GST_VIDEO_GL_TEXTURE_ORIENTATION_X_FLIP_Y_FLIP</p></td>
<td class="enum_member_description">
<p>Bottom line first in memory, right row first</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="GstVideoGLTextureType"></a><h3>enum GstVideoGLTextureType</h3>
<p>The GL texture type.</p>
<div class="refsect3">
<a name="GstVideoGLTextureType.members"></a><h4>Members</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="300px" class="enum_members_name">
<col class="enum_members_description">
<col width="200px" class="enum_members_annotations">
</colgroup>
<tbody>
<tr>
<td class="enum_member_name"><p><a name="GST-VIDEO-GL-TEXTURE-TYPE-LUMINANCE:CAPS"></a>GST_VIDEO_GL_TEXTURE_TYPE_LUMINANCE</p></td>
<td class="enum_member_description">
<p>Luminance texture, GL_LUMINANCE</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="GST-VIDEO-GL-TEXTURE-TYPE-LUMINANCE-ALPHA:CAPS"></a>GST_VIDEO_GL_TEXTURE_TYPE_LUMINANCE_ALPHA</p></td>
<td class="enum_member_description">
<p>Luminance-alpha texture, GL_LUMINANCE_ALPHA</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="GST-VIDEO-GL-TEXTURE-TYPE-RGB16:CAPS"></a>GST_VIDEO_GL_TEXTURE_TYPE_RGB16</p></td>
<td class="enum_member_description">
<p>RGB 565 texture, GL_RGB</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="GST-VIDEO-GL-TEXTURE-TYPE-RGB:CAPS"></a>GST_VIDEO_GL_TEXTURE_TYPE_RGB</p></td>
<td class="enum_member_description">
<p>RGB texture, GL_RGB</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="GST-VIDEO-GL-TEXTURE-TYPE-RGBA:CAPS"></a>GST_VIDEO_GL_TEXTURE_TYPE_RGBA</p></td>
<td class="enum_member_description">
<p>RGBA texture, GL_RGBA</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="GST-VIDEO-GL-TEXTURE-TYPE-R:CAPS"></a>GST_VIDEO_GL_TEXTURE_TYPE_R</p></td>
<td class="enum_member_description">
<p>R texture, GL_RED_EXT</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
<tr>
<td class="enum_member_name"><p><a name="GST-VIDEO-GL-TEXTURE-TYPE-RG:CAPS"></a>GST_VIDEO_GL_TEXTURE_TYPE_RG</p></td>
<td class="enum_member_description">
<p>RG texture, GL_RG_EXT</p>
</td>
<td class="enum_member_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="GstVideoGLTextureUploadMeta"></a><h3>struct GstVideoGLTextureUploadMeta</h3>
<pre class="programlisting">struct GstVideoGLTextureUploadMeta {
  GstMeta       meta;

  GstVideoGLTextureOrientation texture_orientation;
  guint n_textures;
  GstVideoGLTextureType texture_type[4];
};
</pre>
<p>Extra buffer metadata for uploading a buffer to an OpenGL texture
ID. The caller of <a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#gst-video-gl-texture-upload-meta-upload" title="gst_video_gl_texture_upload_meta_upload ()"><code class="function">gst_video_gl_texture_upload_meta_upload()</code></a> must
have OpenGL set up and call this from a thread where it is valid
to upload something to an OpenGL texture.</p>
<div class="refsect3">
<a name="GstVideoGLTextureUploadMeta.members"></a><h4>Members</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="300px" class="struct_members_name">
<col class="struct_members_description">
<col width="200px" class="struct_members_annotations">
</colgroup>
<tbody>
<tr>
<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstMeta.html#GstMeta"><span class="type">GstMeta</span></a> <em class="structfield"><code><a name="GstVideoGLTextureUploadMeta.meta"></a>meta</code></em>;</p></td>
<td class="struct_member_description"><p>parent <a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstMeta.html#GstMeta"><span class="type">GstMeta</span></a></p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureOrientation" title="enum GstVideoGLTextureOrientation"><span class="type">GstVideoGLTextureOrientation</span></a> <em class="structfield"><code><a name="GstVideoGLTextureUploadMeta.texture-orientation"></a>texture_orientation</code></em>;</p></td>
<td class="struct_member_description"><p>Orientation of the textures</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstVideoGLTextureUploadMeta.n-textures"></a>n_textures</code></em>;</p></td>
<td class="struct_member_description"><p>Number of textures that are generated</p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a class="link" href="gst-plugins-base-libs-GstMeta-for-video.html#GstVideoGLTextureType" title="enum GstVideoGLTextureType"><span class="type">GstVideoGLTextureType</span></a> <em class="structfield"><code><a name="GstVideoGLTextureUploadMeta.texture-type"></a>texture_type</code></em>[4];</p></td>
<td class="struct_member_description"><p>Type of each texture</p></td>
<td class="struct_member_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="GstVideoTimeCodeMeta"></a><h3>GstVideoTimeCodeMeta</h3>
<pre class="programlisting">typedef struct {
  GstMeta meta;

  GstVideoTimeCode tc;
} GstVideoTimeCodeMeta;
</pre>
<p>Extra buffer metadata describing the GstVideoTimeCode of the frame.</p>
<p>Each frame is assumed to have its own timecode, i.e. they are not
automatically incremented/interpolated.</p>
<div class="refsect3">
<a name="GstVideoTimeCodeMeta.members"></a><h4>Members</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="300px" class="struct_members_name">
<col class="struct_members_description">
<col width="200px" class="struct_members_annotations">
</colgroup>
<tbody>
<tr>
<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstMeta.html#GstMeta"><span class="type">GstMeta</span></a> <em class="structfield"><code><a name="GstVideoTimeCodeMeta.meta"></a>meta</code></em>;</p></td>
<td class="struct_member_description"><p>parent <a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstMeta.html#GstMeta"><span class="type">GstMeta</span></a></p></td>
<td class="struct_member_annotations"> </td>
</tr>
<tr>
<td class="struct_member_name"><p><a class="link" href="gst-plugins-base-libs-GstVideo.html#GstVideoTimeCode" title="struct GstVideoTimeCode"><span class="type">GstVideoTimeCode</span></a> <em class="structfield"><code><a name="GstVideoTimeCodeMeta.tc"></a>tc</code></em>;</p></td>
<td class="struct_member_description"><p>the GstVideoTimeCode to attach</p></td>
<td class="struct_member_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="ix06.html#api-index-1.10">1.10</a></p>
</div>
</div>
</div>
<div class="footer">
<hr>Generated by GTK-Doc V1.28</div>
</body>
</html>